package com.ygqh.baby.po;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * @author Ss
 */
public class YgWholesalerDeliveryOrderDetailExample {
	protected String orderByClause;

	protected boolean distinct;

	protected List<Criteria> oredCriteria;

	public YgWholesalerDeliveryOrderDetailExample() {
		oredCriteria = new ArrayList<Criteria>();
	}

	public void setOrderByClause(String orderByClause) {
		this.orderByClause = orderByClause;
	}

	public String getOrderByClause() {
		return orderByClause;
	}

	public void setDistinct(boolean distinct) {
		this.distinct = distinct;
	}

	public boolean isDistinct() {
		return distinct;
	}

	public List<Criteria> getOredCriteria() {
		return oredCriteria;
	}

	public void or(Criteria criteria) {
		oredCriteria.add(criteria);
	}

	public Criteria or() {
		Criteria criteria = createCriteriaInternal();
		oredCriteria.add(criteria);
		return criteria;
	}

	public Criteria createCriteria() {
		Criteria criteria = createCriteriaInternal();
		if (oredCriteria.size() == 0) {
			oredCriteria.add(criteria);
		}
		return criteria;
	}

	protected Criteria createCriteriaInternal() {
		Criteria criteria = new Criteria();
		return criteria;
	}

	public void clear() {
		oredCriteria.clear();
		orderByClause = null;
		distinct = false;
	}

	protected abstract static class GeneratedCriteria {
		protected List<Criterion> criteria;

		protected GeneratedCriteria() {
			super();
			criteria = new ArrayList<Criterion>();
		}

		public boolean isValid() {
			return criteria.size() > 0;
		}

		public List<Criterion> getAllCriteria() {
			return criteria;
		}

		public List<Criterion> getCriteria() {
			return criteria;
		}

		protected void addCriterion(String condition) {
			if (condition == null) {
				throw new RuntimeException("Value for condition cannot be null");
			}
			criteria.add(new Criterion(condition));
		}

		protected void addCriterion(String condition, Object value, String property) {
			if (value == null) {
				throw new RuntimeException("Value for " + property + " cannot be null");
			}
			criteria.add(new Criterion(condition, value));
		}

		protected void addCriterion(String condition, Object value1, Object value2, String property) {
			if (value1 == null || value2 == null) {
				throw new RuntimeException("Between values for " + property + " cannot be null");
			}
			criteria.add(new Criterion(condition, value1, value2));
		}

		public Criteria andIdIsNull() {
			addCriterion("id is null");
			return (Criteria) this;
		}

		public Criteria andIdIsNotNull() {
			addCriterion("id is not null");
			return (Criteria) this;
		}

		public Criteria andIdEqualTo(Long value) {
			addCriterion("id =", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdNotEqualTo(Long value) {
			addCriterion("id <>", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdGreaterThan(Long value) {
			addCriterion("id >", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdGreaterThanOrEqualTo(Long value) {
			addCriterion("id >=", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdLessThan(Long value) {
			addCriterion("id <", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdLessThanOrEqualTo(Long value) {
			addCriterion("id <=", value, "id");
			return (Criteria) this;
		}

		public Criteria andIdIn(List<Long> values) {
			addCriterion("id in", values, "id");
			return (Criteria) this;
		}

		public Criteria andIdNotIn(List<Long> values) {
			addCriterion("id not in", values, "id");
			return (Criteria) this;
		}

		public Criteria andIdBetween(Long value1, Long value2) {
			addCriterion("id between", value1, value2, "id");
			return (Criteria) this;
		}

		public Criteria andIdNotBetween(Long value1, Long value2) {
			addCriterion("id not between", value1, value2, "id");
			return (Criteria) this;
		}

		public Criteria andStockoutIdIsNull() {
			addCriterion("stockout_id is null");
			return (Criteria) this;
		}

		public Criteria andStockoutIdIsNotNull() {
			addCriterion("stockout_id is not null");
			return (Criteria) this;
		}

		public Criteria andStockoutIdEqualTo(Integer value) {
			addCriterion("stockout_id =", value, "stockoutId");
			return (Criteria) this;
		}

		public Criteria andStockoutIdNotEqualTo(Integer value) {
			addCriterion("stockout_id <>", value, "stockoutId");
			return (Criteria) this;
		}

		public Criteria andStockoutIdGreaterThan(Integer value) {
			addCriterion("stockout_id >", value, "stockoutId");
			return (Criteria) this;
		}

		public Criteria andStockoutIdGreaterThanOrEqualTo(Integer value) {
			addCriterion("stockout_id >=", value, "stockoutId");
			return (Criteria) this;
		}

		public Criteria andStockoutIdLessThan(Integer value) {
			addCriterion("stockout_id <", value, "stockoutId");
			return (Criteria) this;
		}

		public Criteria andStockoutIdLessThanOrEqualTo(Integer value) {
			addCriterion("stockout_id <=", value, "stockoutId");
			return (Criteria) this;
		}

		public Criteria andStockoutIdIn(List<Integer> values) {
			addCriterion("stockout_id in", values, "stockoutId");
			return (Criteria) this;
		}

		public Criteria andStockoutIdNotIn(List<Integer> values) {
			addCriterion("stockout_id not in", values, "stockoutId");
			return (Criteria) this;
		}

		public Criteria andStockoutIdBetween(Integer value1, Integer value2) {
			addCriterion("stockout_id between", value1, value2, "stockoutId");
			return (Criteria) this;
		}

		public Criteria andStockoutIdNotBetween(Integer value1, Integer value2) {
			addCriterion("stockout_id not between", value1, value2, "stockoutId");
			return (Criteria) this;
		}

		public Criteria andShopNoIsNull() {
			addCriterion("shop_no is null");
			return (Criteria) this;
		}

		public Criteria andShopNoIsNotNull() {
			addCriterion("shop_no is not null");
			return (Criteria) this;
		}

		public Criteria andShopNoEqualTo(String value) {
			addCriterion("shop_no =", value, "shopNo");
			return (Criteria) this;
		}

		public Criteria andShopNoNotEqualTo(String value) {
			addCriterion("shop_no <>", value, "shopNo");
			return (Criteria) this;
		}

		public Criteria andShopNoGreaterThan(String value) {
			addCriterion("shop_no >", value, "shopNo");
			return (Criteria) this;
		}

		public Criteria andShopNoGreaterThanOrEqualTo(String value) {
			addCriterion("shop_no >=", value, "shopNo");
			return (Criteria) this;
		}

		public Criteria andShopNoLessThan(String value) {
			addCriterion("shop_no <", value, "shopNo");
			return (Criteria) this;
		}

		public Criteria andShopNoLessThanOrEqualTo(String value) {
			addCriterion("shop_no <=", value, "shopNo");
			return (Criteria) this;
		}

		public Criteria andShopNoLike(String value) {
			addCriterion("shop_no like", value, "shopNo");
			return (Criteria) this;
		}

		public Criteria andShopNoNotLike(String value) {
			addCriterion("shop_no not like", value, "shopNo");
			return (Criteria) this;
		}

		public Criteria andShopNoIn(List<String> values) {
			addCriterion("shop_no in", values, "shopNo");
			return (Criteria) this;
		}

		public Criteria andShopNoNotIn(List<String> values) {
			addCriterion("shop_no not in", values, "shopNo");
			return (Criteria) this;
		}

		public Criteria andShopNoBetween(String value1, String value2) {
			addCriterion("shop_no between", value1, value2, "shopNo");
			return (Criteria) this;
		}

		public Criteria andShopNoNotBetween(String value1, String value2) {
			addCriterion("shop_no not between", value1, value2, "shopNo");
			return (Criteria) this;
		}

		public Criteria andShopNameIsNull() {
			addCriterion("shop_name is null");
			return (Criteria) this;
		}

		public Criteria andShopNameIsNotNull() {
			addCriterion("shop_name is not null");
			return (Criteria) this;
		}

		public Criteria andShopNameEqualTo(String value) {
			addCriterion("shop_name =", value, "shopName");
			return (Criteria) this;
		}

		public Criteria andShopNameNotEqualTo(String value) {
			addCriterion("shop_name <>", value, "shopName");
			return (Criteria) this;
		}

		public Criteria andShopNameGreaterThan(String value) {
			addCriterion("shop_name >", value, "shopName");
			return (Criteria) this;
		}

		public Criteria andShopNameGreaterThanOrEqualTo(String value) {
			addCriterion("shop_name >=", value, "shopName");
			return (Criteria) this;
		}

		public Criteria andShopNameLessThan(String value) {
			addCriterion("shop_name <", value, "shopName");
			return (Criteria) this;
		}

		public Criteria andShopNameLessThanOrEqualTo(String value) {
			addCriterion("shop_name <=", value, "shopName");
			return (Criteria) this;
		}

		public Criteria andShopNameLike(String value) {
			addCriterion("shop_name like", value, "shopName");
			return (Criteria) this;
		}

		public Criteria andShopNameNotLike(String value) {
			addCriterion("shop_name not like", value, "shopName");
			return (Criteria) this;
		}

		public Criteria andShopNameIn(List<String> values) {
			addCriterion("shop_name in", values, "shopName");
			return (Criteria) this;
		}

		public Criteria andShopNameNotIn(List<String> values) {
			addCriterion("shop_name not in", values, "shopName");
			return (Criteria) this;
		}

		public Criteria andShopNameBetween(String value1, String value2) {
			addCriterion("shop_name between", value1, value2, "shopName");
			return (Criteria) this;
		}

		public Criteria andShopNameNotBetween(String value1, String value2) {
			addCriterion("shop_name not between", value1, value2, "shopName");
			return (Criteria) this;
		}

		public Criteria andDetailCodeIsNull() {
			addCriterion("detail_code is null");
			return (Criteria) this;
		}

		public Criteria andDetailCodeIsNotNull() {
			addCriterion("detail_code is not null");
			return (Criteria) this;
		}

		public Criteria andDetailCodeEqualTo(String value) {
			addCriterion("detail_code =", value, "detailCode");
			return (Criteria) this;
		}

		public Criteria andDetailCodeNotEqualTo(String value) {
			addCriterion("detail_code <>", value, "detailCode");
			return (Criteria) this;
		}

		public Criteria andDetailCodeGreaterThan(String value) {
			addCriterion("detail_code >", value, "detailCode");
			return (Criteria) this;
		}

		public Criteria andDetailCodeGreaterThanOrEqualTo(String value) {
			addCriterion("detail_code >=", value, "detailCode");
			return (Criteria) this;
		}

		public Criteria andDetailCodeLessThan(String value) {
			addCriterion("detail_code <", value, "detailCode");
			return (Criteria) this;
		}

		public Criteria andDetailCodeLessThanOrEqualTo(String value) {
			addCriterion("detail_code <=", value, "detailCode");
			return (Criteria) this;
		}

		public Criteria andDetailCodeLike(String value) {
			addCriterion("detail_code like", value, "detailCode");
			return (Criteria) this;
		}

		public Criteria andDetailCodeNotLike(String value) {
			addCriterion("detail_code not like", value, "detailCode");
			return (Criteria) this;
		}

		public Criteria andDetailCodeIn(List<String> values) {
			addCriterion("detail_code in", values, "detailCode");
			return (Criteria) this;
		}

		public Criteria andDetailCodeNotIn(List<String> values) {
			addCriterion("detail_code not in", values, "detailCode");
			return (Criteria) this;
		}

		public Criteria andDetailCodeBetween(String value1, String value2) {
			addCriterion("detail_code between", value1, value2, "detailCode");
			return (Criteria) this;
		}

		public Criteria andDetailCodeNotBetween(String value1, String value2) {
			addCriterion("detail_code not between", value1, value2, "detailCode");
			return (Criteria) this;
		}

		public Criteria andDeliveryCodeIsNull() {
			addCriterion("delivery_code is null");
			return (Criteria) this;
		}

		public Criteria andDeliveryCodeIsNotNull() {
			addCriterion("delivery_code is not null");
			return (Criteria) this;
		}

		public Criteria andDeliveryCodeEqualTo(String value) {
			addCriterion("delivery_code =", value, "deliveryCode");
			return (Criteria) this;
		}

		public Criteria andDeliveryCodeNotEqualTo(String value) {
			addCriterion("delivery_code <>", value, "deliveryCode");
			return (Criteria) this;
		}

		public Criteria andDeliveryCodeGreaterThan(String value) {
			addCriterion("delivery_code >", value, "deliveryCode");
			return (Criteria) this;
		}

		public Criteria andDeliveryCodeGreaterThanOrEqualTo(String value) {
			addCriterion("delivery_code >=", value, "deliveryCode");
			return (Criteria) this;
		}

		public Criteria andDeliveryCodeLessThan(String value) {
			addCriterion("delivery_code <", value, "deliveryCode");
			return (Criteria) this;
		}

		public Criteria andDeliveryCodeLessThanOrEqualTo(String value) {
			addCriterion("delivery_code <=", value, "deliveryCode");
			return (Criteria) this;
		}

		public Criteria andDeliveryCodeLike(String value) {
			addCriterion("delivery_code like", value, "deliveryCode");
			return (Criteria) this;
		}

		public Criteria andDeliveryCodeNotLike(String value) {
			addCriterion("delivery_code not like", value, "deliveryCode");
			return (Criteria) this;
		}

		public Criteria andDeliveryCodeIn(List<String> values) {
			addCriterion("delivery_code in", values, "deliveryCode");
			return (Criteria) this;
		}

		public Criteria andDeliveryCodeNotIn(List<String> values) {
			addCriterion("delivery_code not in", values, "deliveryCode");
			return (Criteria) this;
		}

		public Criteria andDeliveryCodeBetween(String value1, String value2) {
			addCriterion("delivery_code between", value1, value2, "deliveryCode");
			return (Criteria) this;
		}

		public Criteria andDeliveryCodeNotBetween(String value1, String value2) {
			addCriterion("delivery_code not between", value1, value2, "deliveryCode");
			return (Criteria) this;
		}

		public Criteria andWdtQybCodeIsNull() {
			addCriterion("wdt_qyb_code is null");
			return (Criteria) this;
		}

		public Criteria andWdtQybCodeIsNotNull() {
			addCriterion("wdt_qyb_code is not null");
			return (Criteria) this;
		}

		public Criteria andWdtQybCodeEqualTo(String value) {
			addCriterion("wdt_qyb_code =", value, "wdtQybCode");
			return (Criteria) this;
		}

		public Criteria andWdtQybCodeNotEqualTo(String value) {
			addCriterion("wdt_qyb_code <>", value, "wdtQybCode");
			return (Criteria) this;
		}

		public Criteria andWdtQybCodeGreaterThan(String value) {
			addCriterion("wdt_qyb_code >", value, "wdtQybCode");
			return (Criteria) this;
		}

		public Criteria andWdtQybCodeGreaterThanOrEqualTo(String value) {
			addCriterion("wdt_qyb_code >=", value, "wdtQybCode");
			return (Criteria) this;
		}

		public Criteria andWdtQybCodeLessThan(String value) {
			addCriterion("wdt_qyb_code <", value, "wdtQybCode");
			return (Criteria) this;
		}

		public Criteria andWdtQybCodeLessThanOrEqualTo(String value) {
			addCriterion("wdt_qyb_code <=", value, "wdtQybCode");
			return (Criteria) this;
		}

		public Criteria andWdtQybCodeLike(String value) {
			addCriterion("wdt_qyb_code like", value, "wdtQybCode");
			return (Criteria) this;
		}

		public Criteria andWdtQybCodeNotLike(String value) {
			addCriterion("wdt_qyb_code not like", value, "wdtQybCode");
			return (Criteria) this;
		}

		public Criteria andWdtQybCodeIn(List<String> values) {
			addCriterion("wdt_qyb_code in", values, "wdtQybCode");
			return (Criteria) this;
		}

		public Criteria andWdtQybCodeNotIn(List<String> values) {
			addCriterion("wdt_qyb_code not in", values, "wdtQybCode");
			return (Criteria) this;
		}

		public Criteria andWdtQybCodeBetween(String value1, String value2) {
			addCriterion("wdt_qyb_code between", value1, value2, "wdtQybCode");
			return (Criteria) this;
		}

		public Criteria andWdtQybCodeNotBetween(String value1, String value2) {
			addCriterion("wdt_qyb_code not between", value1, value2, "wdtQybCode");
			return (Criteria) this;
		}

		public Criteria andSkuCodeIsNull() {
			addCriterion("sku_code is null");
			return (Criteria) this;
		}

		public Criteria andSkuCodeIsNotNull() {
			addCriterion("sku_code is not null");
			return (Criteria) this;
		}

		public Criteria andSkuCodeEqualTo(String value) {
			addCriterion("sku_code =", value, "skuCode");
			return (Criteria) this;
		}

		public Criteria andSkuCodeNotEqualTo(String value) {
			addCriterion("sku_code <>", value, "skuCode");
			return (Criteria) this;
		}

		public Criteria andSkuCodeGreaterThan(String value) {
			addCriterion("sku_code >", value, "skuCode");
			return (Criteria) this;
		}

		public Criteria andSkuCodeGreaterThanOrEqualTo(String value) {
			addCriterion("sku_code >=", value, "skuCode");
			return (Criteria) this;
		}

		public Criteria andSkuCodeLessThan(String value) {
			addCriterion("sku_code <", value, "skuCode");
			return (Criteria) this;
		}

		public Criteria andSkuCodeLessThanOrEqualTo(String value) {
			addCriterion("sku_code <=", value, "skuCode");
			return (Criteria) this;
		}

		public Criteria andSkuCodeLike(String value) {
			addCriterion("sku_code like", value, "skuCode");
			return (Criteria) this;
		}

		public Criteria andSkuCodeNotLike(String value) {
			addCriterion("sku_code not like", value, "skuCode");
			return (Criteria) this;
		}

		public Criteria andSkuCodeIn(List<String> values) {
			addCriterion("sku_code in", values, "skuCode");
			return (Criteria) this;
		}

		public Criteria andSkuCodeNotIn(List<String> values) {
			addCriterion("sku_code not in", values, "skuCode");
			return (Criteria) this;
		}

		public Criteria andSkuCodeBetween(String value1, String value2) {
			addCriterion("sku_code between", value1, value2, "skuCode");
			return (Criteria) this;
		}

		public Criteria andSkuCodeNotBetween(String value1, String value2) {
			addCriterion("sku_code not between", value1, value2, "skuCode");
			return (Criteria) this;
		}

		public Criteria andQuantityIsNull() {
			addCriterion("quantity is null");
			return (Criteria) this;
		}

		public Criteria andQuantityIsNotNull() {
			addCriterion("quantity is not null");
			return (Criteria) this;
		}

		public Criteria andQuantityEqualTo(Long value) {
			addCriterion("quantity =", value, "quantity");
			return (Criteria) this;
		}

		public Criteria andQuantityNotEqualTo(Long value) {
			addCriterion("quantity <>", value, "quantity");
			return (Criteria) this;
		}

		public Criteria andQuantityGreaterThan(Long value) {
			addCriterion("quantity >", value, "quantity");
			return (Criteria) this;
		}

		public Criteria andQuantityGreaterThanOrEqualTo(Long value) {
			addCriterion("quantity >=", value, "quantity");
			return (Criteria) this;
		}

		public Criteria andQuantityLessThan(Long value) {
			addCriterion("quantity <", value, "quantity");
			return (Criteria) this;
		}

		public Criteria andQuantityLessThanOrEqualTo(Long value) {
			addCriterion("quantity <=", value, "quantity");
			return (Criteria) this;
		}

		public Criteria andQuantityIn(List<Long> values) {
			addCriterion("quantity in", values, "quantity");
			return (Criteria) this;
		}

		public Criteria andQuantityNotIn(List<Long> values) {
			addCriterion("quantity not in", values, "quantity");
			return (Criteria) this;
		}

		public Criteria andQuantityBetween(Long value1, Long value2) {
			addCriterion("quantity between", value1, value2, "quantity");
			return (Criteria) this;
		}

		public Criteria andQuantityNotBetween(Long value1, Long value2) {
			addCriterion("quantity not between", value1, value2, "quantity");
			return (Criteria) this;
		}

		public Criteria andDeliveryTimeIsNull() {
			addCriterion("delivery_time is null");
			return (Criteria) this;
		}

		public Criteria andDeliveryTimeIsNotNull() {
			addCriterion("delivery_time is not null");
			return (Criteria) this;
		}

		public Criteria andDeliveryTimeEqualTo(Date value) {
			addCriterion("delivery_time =", value, "deliveryTime");
			return (Criteria) this;
		}

		public Criteria andDeliveryTimeNotEqualTo(Date value) {
			addCriterion("delivery_time <>", value, "deliveryTime");
			return (Criteria) this;
		}

		public Criteria andDeliveryTimeGreaterThan(Date value) {
			addCriterion("delivery_time >", value, "deliveryTime");
			return (Criteria) this;
		}

		public Criteria andDeliveryTimeGreaterThanOrEqualTo(Date value) {
			addCriterion("delivery_time >=", value, "deliveryTime");
			return (Criteria) this;
		}

		public Criteria andDeliveryTimeLessThan(Date value) {
			addCriterion("delivery_time <", value, "deliveryTime");
			return (Criteria) this;
		}

		public Criteria andDeliveryTimeLessThanOrEqualTo(Date value) {
			addCriterion("delivery_time <=", value, "deliveryTime");
			return (Criteria) this;
		}

		public Criteria andDeliveryTimeIn(List<Date> values) {
			addCriterion("delivery_time in", values, "deliveryTime");
			return (Criteria) this;
		}

		public Criteria andDeliveryTimeNotIn(List<Date> values) {
			addCriterion("delivery_time not in", values, "deliveryTime");
			return (Criteria) this;
		}

		public Criteria andDeliveryTimeBetween(Date value1, Date value2) {
			addCriterion("delivery_time between", value1, value2, "deliveryTime");
			return (Criteria) this;
		}

		public Criteria andDeliveryTimeNotBetween(Date value1, Date value2) {
			addCriterion("delivery_time not between", value1, value2, "deliveryTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeIsNull() {
			addCriterion("create_time is null");
			return (Criteria) this;
		}

		public Criteria andCreateTimeIsNotNull() {
			addCriterion("create_time is not null");
			return (Criteria) this;
		}

		public Criteria andCreateTimeEqualTo(Date value) {
			addCriterion("create_time =", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeNotEqualTo(Date value) {
			addCriterion("create_time <>", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeGreaterThan(Date value) {
			addCriterion("create_time >", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
			addCriterion("create_time >=", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeLessThan(Date value) {
			addCriterion("create_time <", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
			addCriterion("create_time <=", value, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeIn(List<Date> values) {
			addCriterion("create_time in", values, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeNotIn(List<Date> values) {
			addCriterion("create_time not in", values, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeBetween(Date value1, Date value2) {
			addCriterion("create_time between", value1, value2, "createTime");
			return (Criteria) this;
		}

		public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
			addCriterion("create_time not between", value1, value2, "createTime");
			return (Criteria) this;
		}

		public Criteria andStatusIsNull() {
			addCriterion("status is null");
			return (Criteria) this;
		}

		public Criteria andStatusIsNotNull() {
			addCriterion("status is not null");
			return (Criteria) this;
		}

		public Criteria andStatusEqualTo(String value) {
			addCriterion("status =", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusNotEqualTo(String value) {
			addCriterion("status <>", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusGreaterThan(String value) {
			addCriterion("status >", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusGreaterThanOrEqualTo(String value) {
			addCriterion("status >=", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusLessThan(String value) {
			addCriterion("status <", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusLessThanOrEqualTo(String value) {
			addCriterion("status <=", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusLike(String value) {
			addCriterion("status like", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusNotLike(String value) {
			addCriterion("status not like", value, "status");
			return (Criteria) this;
		}

		public Criteria andStatusIn(List<String> values) {
			addCriterion("status in", values, "status");
			return (Criteria) this;
		}

		public Criteria andStatusNotIn(List<String> values) {
			addCriterion("status not in", values, "status");
			return (Criteria) this;
		}

		public Criteria andStatusBetween(String value1, String value2) {
			addCriterion("status between", value1, value2, "status");
			return (Criteria) this;
		}

		public Criteria andStatusNotBetween(String value1, String value2) {
			addCriterion("status not between", value1, value2, "status");
			return (Criteria) this;
		}
	}

	public static class Criteria extends GeneratedCriteria {

		protected Criteria() {
			super();
		}
	}

	public static class Criterion {
		private String condition;

		private Object value;

		private Object secondValue;

		private boolean noValue;

		private boolean singleValue;

		private boolean betweenValue;

		private boolean listValue;

		private String typeHandler;

		public String getCondition() {
			return condition;
		}

		public Object getValue() {
			return value;
		}

		public Object getSecondValue() {
			return secondValue;
		}

		public boolean isNoValue() {
			return noValue;
		}

		public boolean isSingleValue() {
			return singleValue;
		}

		public boolean isBetweenValue() {
			return betweenValue;
		}

		public boolean isListValue() {
			return listValue;
		}

		public String getTypeHandler() {
			return typeHandler;
		}

		protected Criterion(String condition) {
			super();
			this.condition = condition;
			this.typeHandler = null;
			this.noValue = true;
		}

		protected Criterion(String condition, Object value, String typeHandler) {
			super();
			this.condition = condition;
			this.value = value;
			this.typeHandler = typeHandler;
			if (value instanceof List<?>) {
				this.listValue = true;
			} else {
				this.singleValue = true;
			}
		}

		protected Criterion(String condition, Object value) {
			this(condition, value, null);
		}

		protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
			super();
			this.condition = condition;
			this.value = value;
			this.secondValue = secondValue;
			this.typeHandler = typeHandler;
			this.betweenValue = true;
		}

		protected Criterion(String condition, Object value, Object secondValue) {
			this(condition, value, secondValue, null);
		}
	}
}